package ar.republicagroup.gestion.dao;

import ar.republicagroup.gestion.entities.Banco;
import ar.republicagroup.gestion.entities.Cheque;
import ar.republicagroup.gestion.entities.ChequeEstado;
import ar.republicagroup.gestion.entities.ChequeTipo;
import ar.republicagroup.gestion.entities.CuentaBanco;
import java.util.Calendar;
import java.util.List;
import java.util.Map;


public interface ChequeDAO {
	
	public List<Cheque> findEntities();
        
        public List<Cheque> getChequesByNumeroDeCheque(String numeroDeCheque);
        
        public List<Cheque> getChequesByImporte(double importe);
        
        public List<Cheque> getChequesByBolsaId(int bolsa_id);
        
        public List<Cheque> getChequesByFilters(ChequeTipo chequeTipo,ChequeEstado chequeEstado,CuentaBanco cuentaBanco,Banco banco,String origen,Calendar fechaDesde,Calendar fechaHasta);
                
        public boolean isChequeRegistered(String codigoStringDeCheque);
        
        public Map<String,Object> getLiquidacionesPosiblesPorCadaCliente(Calendar fechaLiquidacion);
        
        public Map<String,Object> getTotalesProvCap(); 
        	
	public String insert(Cheque beanCheque);

        public String update(Cheque beanCheque);

        public Cheque get(Integer id_cheque); 

        public String delete(Integer id_cheque);
        
        public List<Object[]> getSumaDeChequesPorClienteDelDia(String fecha,String origenCheques);
	

}
